package net.fruit.mq.client.transaction;

import net.fruit.mq.client.Message;

/**
 * 本地事务执行器
 */
public interface LocalTransactionExecuter {
    /**
     * 执行本地事务，由应用来重写
     *
     * @param msg
     *         消息
     * @param arg
     *         应用自定义参数，由send方法传入并回调
     *
     * @return 返回事务执行结果
     */
    public TransactionStatus execute(final Message msg, final Object arg);
}
